Scalar Functions এবং Table Functions গাইড ও নোট

Big Data and Analytics - ড্যাক্স দিয়ে ডেটা মডেলিং (Data Modeling with DAX) - DAX Functions এবং Expressions
333

DAX (Data Analysis Expressions) হল একটি শক্তিশালী ভাষা যা Power BI, Excel PowerPivot, এবং SQL Server Analysis Services (SSAS)-এ ব্যবহৃত হয় ডেটা বিশ্লেষণ, কাস্টম ক্যালকুলেশন, এবং রিপোর্ট তৈরির জন্য। DAX ফাংশনগুলি দুটি প্রধান শ্রেণীতে ভাগ করা যায়: Scalar Functions এবং Table Functions। এই দুই ধরনের ফাংশন বিভিন্ন পরিস্থিতিতে ব্যবহার করা হয় এবং ডেটা বিশ্লেষণ প্রক্রিয়াকে আরও কার্যকরী ও ফলপ্রসূ করে তোলে।

এখানে আমরা Scalar Functions এবং Table Functions এর মধ্যে পার্থক্য এবং তাদের ব্যবহারের উদাহরণ আলোচনা করব।


১. Scalar Functions

Scalar Functions হল এমন ফাংশন যা একক মান (scalar value) প্রদান করে। এই ধরনের ফাংশনগুলি এক বা একাধিক আর্গুমেন্ট গ্রহণ করে এবং একটি একক মান ফেরত দেয়। Scalar Functions সাধারণত numbers, dates, strings ইত্যাদি ডেটা প্রকারের উপর কাজ করে এবং তাদের উপর বিভিন্ন ধরনের গণনা বা ক্যালকুলেশন করে।

Common Scalar Functions in DAX:

  • SUM: একটি কলামের সমস্ত মানের যোগফল নির্ধারণ করে।
  • AVERAGE: একটি কলামের গড় মান বের করে।
  • MAX: একটি কলামের সর্বোচ্চ মান বের করে।
  • MIN: একটি কলামের সর্বনিম্ন মান বের করে।
  • IF: একটি শর্ত অনুযায়ী দুটি মানের মধ্যে একটি নির্বাচন করে।
  • LEN: একটি স্ট্রিংয়ের দৈর্ঘ্য (length) নির্ধারণ করে।
  • DATE: একটি নির্দিষ্ট বছরের, মাসের, এবং দিনের তারিখ তৈরি করে।
  • ROUND: একটি সংখ্যাকে নির্দিষ্ট দশমিক স্থান পর্যন্ত গোল করা।

Examples of Scalar Functions:

  1. SUM ফাংশন:
Total Sales = SUM(Sales[Amount])

এটি Sales টেবিলের Amount কলামের সমস্ত মান যোগফল বের করবে।

  1. IF ফাংশন:
Profit or Loss = IF(Sales[Amount] > 1000, "Profit", "Loss")

এটি Sales টেবিলের Amount কলাম পরীক্ষা করবে এবং যদি Amount 1000 এর বেশি হয়, তাহলে "Profit" রিটার্ন করবে, অন্যথায় "Loss" রিটার্ন করবে।

  1. LEN ফাংশন:
Text Length = LEN(Products[ProductName])

এটি Products টেবিলের ProductName কলামের দৈর্ঘ্য নির্ধারণ করবে (স্ট্রিংয়ের অক্ষরের সংখ্যা)।


২. Table Functions

Table Functions হল এমন ফাংশন যা টেবিল (table) বা কলামের একটি সেট প্রদান করে। এগুলি মূলত table expressions হিসেবে কাজ করে এবং টেবিলের উপর aggregation বা filtering করতে ব্যবহৃত হয়। Table Functions সাধারণত একটি টেবিল বা কলাম গঠন করে, যা পরে অন্যান্য ফাংশনগুলিতে ব্যবহার করা হতে পারে।

Common Table Functions in DAX:

  • FILTER: একটি টেবিল বা কলামের উপর শর্ত প্রয়োগ করে ফিল্টার করা ডেটা ফেরত দেয়।
  • ALL: একটি টেবিল বা কলামের সমস্ত ফিল্টার সরিয়ে দেয়।
  • SUMMARIZE: একটি টেবিলের ওপর গ্রুপিং এবং সারাংশ তৈরি করে।
  • VALUES: একটি কলামের ইউনিক মান ফিরিয়ে দেয়।
  • CROSSJOIN: দুটি টেবিলের ক্রস প্রোডাক্ট তৈরি করে।
  • DISTINCT: একটি কলামের ইউনিক মান ফিরিয়ে দেয়।
  • SELECTCOLUMNS: একটি নতুন টেবিল তৈরি করে যা নির্দিষ্ট কলাম বা এক্সপ্রেশন ধারণ করে।

Examples of Table Functions:

  1. FILTER ফাংশন:
High Sales = FILTER(Sales, Sales[Amount] > 1000)

এটি Sales টেবিল থেকে শুধুমাত্র সেই সারিগুলি নির্বাচন করবে যেখানে Amount 1000 এর বেশি।

  1. SUMMARIZE ফাংশন:
Product Sales Summary = SUMMARIZE(Sales, Sales[ProductID], "Total Sales", SUM(Sales[Amount]))

এটি Sales টেবিলের জন্য ProductID অনুসারে বিক্রয় পরিমাণের সমষ্টি গড়ে একটি নতুন টেবিল তৈরি করবে।

  1. ALL ফাংশন:
Total Sales Without Filter = CALCULATE(SUM(Sales[Amount]), ALL(Sales[Region]))

এটি Sales টেবিলের Amount এর যোগফল বের করবে, কিন্তু Region কলামের ফিল্টার প্রভাব মুছে ফেলবে।

  1. VALUES ফাংশন:
Distinct Products = VALUES(Sales[ProductID])

এটি Sales টেবিলের ProductID কলামের ইউনিক মান ফিরিয়ে দেবে।


Scalar Functions এবং Table Functions এর মধ্যে পার্থক্য

ফিচারScalar FunctionsTable Functions
ফলাফলএকক মান (scalar value) ফেরত দেয়।টেবিল বা কলামের মান ফেরত দেয়।
ব্যবহারসংখ্যার হিসাব, স্ট্রিং প্রসেসিং, এবং সাধারণ গণনা।টেবিল তৈরির জন্য, ডেটা ফিল্টার, গ্রুপিং, এবং সিলেকশন।
উদাহরণSUM, AVERAGE, LEN, IF, DATEFILTER, ALL, SUMMARIZE, VALUES, CROSSJOIN
পারফরম্যান্সদ্রুত এবং সরাসরি গণনা।বড় টেবিলের সাথে কাজ করতে ধীর হতে পারে।
ডেটা আউটপুটএকক ফলাফল (যেমন সংখ্যা বা স্ট্রিং)।একটি টেবিল বা কলামের মান।

সারাংশ

Scalar Functions এবং Table Functions DAX-এর দুটি গুরুত্বপূর্ণ ফাংশন শ্রেণী যা ডেটা বিশ্লেষণ, কাস্টম ক্যালকুলেশন এবং রিপোর্ট তৈরির জন্য ব্যবহৃত হয়। Scalar Functions একক মান ফেরত দেয়, যেমন SUM, AVERAGE, IF, LEN ইত্যাদি, যা সাধারণভাবে সংখ্যার বা স্ট্রিংয়ের ওপর কাজ করে। অন্যদিকে, Table Functions টেবিল বা কলাম ফেরত দেয়, যেমন FILTER, ALL, VALUES, SUMMARIZE ইত্যাদি, যা ডেটাকে ফিল্টার করা, গ্রুপিং করা, বা টেবিল তৈরি করা জন্য ব্যবহৃত হয়।

আপনি যখন DAX-এ কাজ করবেন, তখন সঠিক ফাংশন নির্বাচন করা গুরুত্বপূর্ণ, যা আপনার নির্দিষ্ট বিশ্লেষণ বা কাস্টম ক্যালকুলেশন অনুযায়ী সঠিক ফলাফল প্রদান করবে। Scalar Functions সরাসরি গণনা এবং ডেটা প্রসেসিংয়ের জন্য কার্যকর, আর Table Functions ডেটা সিলেকশন, ফিল্টারিং, এবং গ্রুপিংয়ের জন্য বেশি উপকারী।

Content added By
Promotion

Are you sure to start over?

Loading...